Camera arrays, which may be provided on tablets or smartphones for example, may be provided to capture multiple images of the same scene except from different angles. These images can then be used to generate a 3D space or depth map, and accurately locate objects from the scene and into the 3D space. This is performed so that objects in the scene, or distances between objects in the scene (or from the camera to the object) can be measured, for computer vision, artificial intelligence, object recognition, and otherwise whenever it is desirable to know the size, position, or identity of an object.
Feature matching (or feature point matching) is used to match the features of an object (such as a corner or an edge of an object) from one image to another image captured by a camera array. Feature point matching is widely used in camera calibration to set the proper position or orientation for each camera in the array or on the device with the array, and thereafter, to set an accurate final point location on an object by using the same corresponding feature point from multiple images. Basically, for a feature point from a reference camera image, a matching algorithm finds the corresponding feature point in the other camera images regardless of changes in light, scale, and other transformations. Many of the conventional methods for matching feature points are often too slow or inaccurate especially for mobile devices.